Method for model adaptation, electronic device and computer program product

ABSTRACT

A method for model adaptation, an electronic device, and a computer program product are disclosed. For example, the method comprises processing first input data by using a first machine learning model having first parameter set values, to obtain first feature information of the first input data, the first machine learning model having a capability of self-ordering and the first parameter set values being updated after the processing of the first input data; generating a first classification result for the first input data based on the first feature information by using a second machine learning model having second parameter set values; processing second input data by using the first machine learning model having the updated first parameter set values, to obtain second feature information of the second input data; and generating a second classification result for the second input data based on the second feature information by using the second machine learning model having the second parameter set values. As such, the machine learning model for classification can be adapted to changes in features of input data to provide better classification results.

RELATED APPLICATION(S)

The present application claims priority to Chinese Patent ApplicationNo. 201911058634.1, filed Nov. 1, 2019, and entitled “Method for ModelAdaptation, Electronic Device and Computer Program Product,” which isincorporated by reference herein in its entirety.

FIELD

Embodiments of the present disclosure relate to the field of artificialintelligence and more specifically, to a method for model adaptation, anelectronic device, and a computer program product.

BACKGROUND

In recent years, technologies such as high-performance computing,machine learning, deep learning and artificial intelligence have emergedand developed rapidly. Depending on these emerging technologies,technicians can design different processing tasks as required forvarious purposes. Such tasks are collectively referred to as machinelearning tasks. Machine learning tasks often rely on a large amount ofdata and a high processing capability, especially a parallel processingcapability. As such, in addition to general-purpose processing resourcessuch as

Central Processing Units (CPUs) and storage resources such as storagedevices, execution of the machine learning tasks also requires dedicatedprocessing resources such as Graphics Processing Units (GPUs) and FieldProgrammable Gate Arrays (FPGAs). Depending on different taskobjectives, complexity, and accuracy, different machine learning tasksmay have different resource demands. Therefore, update of a machinelearning model may be limited at least due to the resource consumption.

SUMMARY

Embodiments of the present disclosure provide a solution for modeladaptation.

In a first aspect of the present disclosure, there is provided a methodfor model adaptation. The method comprises processing first input databy using a first machine learning model having first parameter setvalues, to obtain first feature information of the first input data, thefirst machine learning model having a capability of self-ordering andthe first parameter set values being updated after the processing of thefirst input data; generating a first classification result for the firstinput data based on the first feature information by using a secondmachine learning model having second parameter set values; processingsecond input data by using the first machine learning model having theupdated first parameter set values, to obtain second feature informationof the second input data; and generating a second classification resultfor the second input data based on the second feature information byusing the second machine learning model having the second parameter setvalues.

In a second aspect of the present disclosure, there is provided anelectronic device. The electronic device comprises at least oneprocessor; and at least one memory storing computer programinstructions, the at least one memory and the computer programinstructions being configured, with the at least processor, to cause theelectronic device to perform acts. The acts comprises processing firstinput data by using a first machine learning model having firstparameter set values, to obtain first feature information of the firstinput data, the first machine learning model having a capability ofself-ordering and the first parameter set values being updated after theprocessing of the first input data; generating a first classificationresult for the first input data based on the first feature informationby using a second machine learning model having second parameter setvalues; processing second input data by using the first machine learningmodel having the updated first parameter set values, to obtain secondfeature information of the second input data; and generating a secondclassification result for the second input data based on the secondfeature information by using the second machine learning model havingthe second parameter set values.

In a third aspect of the present disclosure, there is provided acomputer program product. The computer program product is tangiblystored on a non-volatile computer readable medium and comprisesmachine-executable instructions, the machine-executable instructions,when executed, causing a device to: process first input data by using afirst machine learning model having first parameter set values, toobtain first feature information of the first input data, the firstmachine learning model having a capability of self-ordering and thefirst parameter set values being updated after the processing of thefirst input data; generate a first classification result for the firstinput data based on the first feature information by using a secondmachine learning model having second parameter set values; processsecond input data by using the first machine learning model having theupdated first parameter set values, to obtain second feature informationof the second input data; and generate a second classification resultfor the second input data based on the second feature information byusing the second machine learning model having the second parameter setvalues.

This Summary is provided to introduce a selection of concepts in asimplified form, which are further described in the Detailed Descriptionbelow. This Summary is not necessarily intended to identify each andevery key or essential feature of the claimed subject matter, nor is itintended to limit the scope of the claimed subject matter.

BRIEF DESCRIPTION OF THE DRAWINGS

The above and other objectives, features, and advantages of exampleembodiments of the present disclosure will become more apparent throughthe following detailed description with reference to the accompanyingdrawings, in which the same reference symbols refer to the same elementsin exemplary embodiments of the present disclosure.

FIG. 1 illustrates a schematic diagram of a conventional machinelearning model-based application;

FIG. 2 illustrates a schematic diagram of a structure with adaptivemodel architecture according to some embodiments of the presentdisclosure;

FIG. 3 illustrates a schematic diagram of an example structure of afirst machine learning model according to some embodiments of thepresent disclosure;

FIG. 4 illustrates a schematic diagram of an example structure of asecond machine learning model according to some embodiments of thepresent disclosure;

FIG. 5 illustrates a schematic diagram showing a structure of anadaptive model according to some other embodiments of the presentdisclosure;

FIG. 6 illustrates a flowchart of a process for model adaptationaccording to some embodiments of the present disclosure; and

FIG. 7 illustrates a block diagram of an example device that can be usedto implement embodiments of the present disclosure.

DETAILED DESCRIPTION

The principles of the present disclosure will now be described belowwith reference to several example embodiments shown in the accompanyingdrawings. Although some preferred embodiments of the present disclosureare shown in the accompanying drawings, it would be appreciated thatthese embodiments are described only to enable those skilled in the artto better understand and practice the present disclosure, withoutsuggesting any limitation to the scope of the present disclosure in anyway.

As used herein, the term “includes” and its variants are to be read asopen-ended terms that mean “includes, but is not limited to.” The term“or” is to be read as “and/or” unless the context clearly indicatesotherwise. The term “based on” is to be read as “based at least in parton.” The term “one example implementation” and “an exampleimplementation” are to be read as “at least one example implementation.”The term “another implementation” is to be read as “at least one furtherimplementation.” The terms “a first,” “a second” and others may denotedifferent or the same objects. Other definitions, either explicit orimplicit, may be included below.

As used herein, “machine learning” refers to processing involvinghigh-performance computing, machine learning, and artificialintelligence algorithms. As used herein, the term “machine learningmodel” may also be referred to as “learning model,” “learning network,”“network model” or “model”. A “neural network” or “neural network model”is a deep machine learning model. Generally speaking, a machine learningmodel receives input information and performs prediction based on theinput information.

Generally speaking, machine learning is divided into three phases,including a training phase, a test phase, and an application phase. Inthe training phase, a given machine learning model may be trained usinga large amount of training samples, and the training is iteratedconstantly until the machine learning model may obtain, from thetraining samples, consistent inference that is similar to what can bemade by human intelligence. Through training, the machine training modelmay be capable of learning a mapping or association relationship betweenthe input and the output from the training data. Through the training,parameter set values of the machine learning model are determined.During the test phase, the test samples can be used to test the trainedmachine learning model to determine the performance of the machinelearning model. In the application phase, the machine learning model canbe used to process real-life input information based on the parameterset values obtained from the training to provide the correspondingoutput.

FIG. 1 illustrates a schematic diagram 100 of a conventional machinelearning model-based application. During the training phase, a computingdevice 110 for model training trains a machine learning model 102 usingthe training data. The computing device 110 may access a trainingdatabase 105 which stores the training data for training the machinelearning model 102.

The model training can be broadly divided into supervised learning andunsupervised learning. In supervised learning, training input data 112and ground-truth labels 116 of the training input data 112 are used totrain. Both the training input data 112 and the ground-truth labels 116are referred to as training data for the machine learning model 102. Theformat of the training input data 112 is supported by the machinelearning model 102. During the training process, each time the machinelearning model 102 processes the training input data 112 based onparameter values of a current parameter set, it provides model outputs114 based on the current parameter set. The computing device 110compares the model outputs 114 with the ground-truth labels 116 todetermine whether the parameter set values of the machine learning model102 are accurate. For example, if a result of the comparison indicatesthat the difference is relatively large, the computing device 110 maycontinue to adjust the parameter set values. After a convergencecondition is satisfied, the training of the machine learning model 102is completed. In the unsupervised learning, the ground-truth labels 116are not necessary and the machine learning model can analyze possiblepatterns in the training input data 112 during the training.

After the training of the machine learning model 102 is completed, thetrained machine learning model 102 may be tested using known test datato determine the model performance. Such a test phase may also beperformed by the computing device 110.

The trained machine learning model 102 may be applied. The machinelearning model 102 may, for example, be provided to the computing device120 for application. The trained machine learning model 102 may beconsidered to be an application program, a logic function block, asoftware component, and any other component that is executable by thecomputing device. The computing device 120 takes real-life input data122 as an input to the machine learning model 102, runs the machinelearning model 102, and obtains a model output 124 from the machinelearning model 102.

The machine learning model 102 may be designed to implement varioustasks. A common task is a general classification task, includingbinary-class, multi-classes classification, and anomaly detection inwhich the model outputs are some clustering results that indicateanomalous classes. When a classification problem is performed, the inputof the machine learning model 102 may be structured data, unstructureddata, and especially sequential data. Many problems encountered inpractical application may be converted into classification problems.Therefore, many models have been designed to implement classificationtasks. In the embodiments of the present disclosure described below,machine learning models for implementing classification tasks are mainlydiscussed.

Considering training and application of a machine learning model, achallenge is how to evolve the model to ensure that the model has alonger lifetime. One desired scenario is that after the machine learningmodel is in use, the model can still be evolved and updated, forexample, by updating the parameter set values as needed, so as to learnthe capability of processing input data with new features. This processis referred to as online training. The reason for the continuousevolution and update of the model is that the training data is alwayslimited and features of input data to be processed by the model maychange over time. In addition, in the application phase, the responsespeed of the model is also very important. This poses a higher challengefor online training. If new training data continue to be collected andoffline training is performed, more costs are needed and the update ofthe model is delayed.

In an example, it is assumed that a machine learning model is trained toimplement a behavior detection task, detecting and classifying thebehavior of objects by analyzing ground-truth-time video data. After themodel is placed in the application phase, it becomes a problem whetherthe model can still be adapted to the data changes and provide accurateclassification results for new input data. The features in the new inputdata may change for various reasons. For example, a model for facialrecognition can accurately recognize a baby from a large number of babyfacial images after being trained. However, facial features of the babymay change as he/she grows up. It is desired that the machine learningmodel can capture such feature changes so as to provide accurateresults. As another example, a model for detecting whether an account isattacked analyzes data related to a behavior of a user. If the user'sbehavior changes over time, it is also desired to make the machinelearning model adapted to such changes.

In general, training of a machine learning model requires massivecomputing sources for calculating gradients and updating parameter setvalues. It is difficult to enable many common trained machine learningmodels adapted to new input data (for example, input data with newfeatures). Some widely-used models, such as Convolutional NeuralNetworks (CNN) and Recurrent Neural Networks (RNN), are very complex andrequire a large number of complex operations, so it is more difficultfor such models to implement the online training to learn features ofnew data. As described with reference to the machine learning model 102of FIG. 1, in a conventional machine learning process, the modeltraining and the model application are generally separated. Aftercompleting the training, the machine learning model is a fixed model andwill not change.

Although there are some online training solutions, those solutions allrequire piling up the training process and the prediction process, andupdating the model with data in batches after the input data isaccumulated to a certain amount. In addition, in order to make the modelappear to be running online and training online, these solutions willrely on various online architectures, training accelerators, and someefficient update logics. Thus, the overhead and cost are greatlyincreased. In these solutions, the training of the model still requiresa backhaul process and some update processes, which brings about certaincomplexity.

On the other hand, collection of ground-truth labels for new input datais required to update the machine learning model. In practice, thecollection of the ground-truth labels is time-consuming, for example,requiring manual labeling. A re-training process is started only after acertain amount of input data and ground-truth labels are accumulated.This prevents the training method using the supervised learning fromproviding fast model update.

Therefore, the current evolution and update of the machine learningmodel are undesirable considering the workload in re-training of themodel with new input data and the overhead of collecting data for there-training.

According to embodiments of the present disclosure, an improved solutionfor model adaptation is proposed. According to the solution, a machinelearning model with a self-ordering mechanism is used to assist inextracting feature information of the input data, and the extractedfeature information is provided to a machine learning model ofclassification to determine a classification result of the input data.The machine learning model with the self-ordering mechanism canadaptively change its parameter set after processing the input data.That is, the machine learning model can continuously learn from theinput data in an unsupervised manner and update its parameter set. Inthis way, in the subsequent processing of the input data, new featureinformation can be extracted to facilitate the machine learning model ofclassification to determine more accurate classification results for theinput data with new features. In this solution, by introducing themachine learning model capable of adaptively updating values in its ownparameter set based on new input data, the other machine learning modelof classification can be adapted to the update of the features in theinput data and provide better classification results.

FIG. 2 illustrates a schematic diagram of a structure with adaptivemodel architecture 200 according to some embodiments of the presentdisclosure. The model architecture 200 at least comprises a firstmachine learning model 210 and a second machine learning model 220. Themodel architecture 200, after being trained, may be applied to implementa classification task. The training of the model architecture 200 may,for example, be implemented by any device with a computing capability,such as the computing device 110 of FIG. 1. The application of the modelarchitecture 200 may be implemented by any device having a computingcapability, such as the computing device 120 of FIG. 1. The applicationof the model architecture 200 is discussed first below. For purpose ofdiscussion, in the following, the model architecture 200 is implementedon the computing device 120.

In the model architecture 200, the first machine learning model 210 is amodel having a capability of self-ordering. This allows the firstmachine learning model 210 to automatically discover new features ininput data. Thus, parameter set values of the first machine learningmodel 210 may be updated in an unsupervised learning manner, withoutrequiring backward propagation or gradient descent calculation as inconventional model training. An example of the first machine learningmodel 210 is an unsupervised spiking neural network (SNN). Theunsupervised SNN can be adapted to input data based on plasticity rulessimilar to those in the human brain, such as spike-timing-dependentplasticity. The unsupervised SNN will be discussed in detail below. Itwould be appreciated that it is feasible to apply other machine learningmodels having a capability of self-ordering to adapt to the input datain an unsupervised learning manner.

In operation, if classification is to be performed on input data 202-1(for purpose of discussion, referred to as first input data 202-1), thecomputing device 120 uses the first machine learning model 210 toprocess the first input data 202-1. The parameter set of the firstmachine learning model 210 is currently set to have first parameter setvalues. The model output of the first machine learning model 210 isfeature information of the first input data 202-1 (referred to as thefirst feature information, for purpose of discussion). In someembodiments, the first input data 202-1 may be pre-processed, forexample, by a pre-processing module 230, and the pre-processed firstinput data 202-1 is provided as the input to the first machine learningmodel 210.

The pre-processing module 230 may be configured to convert the firstinput data 202-1 into a data form available for processing by the firstmachine learning model 210. The pre-processing module 230 will bedescribed in detail below with reference to some examples.

With the self-ordering capability of the first machine learning model210, after the processing of the first input data 202-1, if the featuresin the first input data 202-1 are different from features in the inputdata used in the training phase of the first machine learning model 210or processed previously, the current first parameter set values of thefirst machine learning model 210 can be automatically updated.

The computing device 120 continues to process the first featureinformation by using the second machine learning model 220 to generate afirst classification result for the first input data 202-1.Specifically, the first feature information is provided as an input ofthe second machine learning model 220. The second machine learning model220 has been trained to have specific parameter set values (referred toas second parameter set values, for purpose of discussion). The secondmachine learning model 220 will process the first feature informationand output the first classification result for the first input data202-1.

The second machine learning model 220 may be configured as any machinelearning model capable of performing a classification task. Examples ofthe second machine learning model 220 include, but are not limited to, aReinforcement Learning (RL) model, a CNN, an RNN, a support vectormachine (SVM), a probability model, a linear classification model, andthe like. The classification task to be performed by the second machinelearning model 220 is not limited and may, for example, be any of abinary classification task, a multi-classification task, anomalydetection task, and the like.

As mentioned above, the first machine learning model 210 has beenadapted to the new first input data 202-1 and thus has its own firstparameter set values updated adaptively. Then, if the computing device120 receives input data 202-2 to be processed (referred to as secondinput data, for purpose of discussion), the computing device 120 furtheruses the first machine learning model 210 to process the second inputdata 202-2. At this time, the first machine learning model 210 mayextract feature information of the second input data 202-2 based on theupdated first parameter set values (referred to as second featureinformation, for purpose of discussion). If the features of the secondinput data 202-2 are similar to the features of the first input data202-1, the first machine learning model 210 can extract the secondfeature information more easily and accurately. In some embodiments, thesecond input data 202-2 may be pre-processed, for example, by thepre-processing module 230, and the pre-processed second input data 202-2is provided as an input to the first machine learning model 210.

The computing device 120 further uses the second machine learning model220 to process the second feature information to generate a secondclassification result for the second input data 202-2. Since the secondmachine learning model 220 has no self-ordering capability, theparameter set values of the second machine learning model 220 are notchanged. Therefore, after the second feature information is provided asthe input to the second machine learning model 220, the second machinelearning model 220 still processes the second feature information basedon the second parameter set values to output the second classificationresult for the second input data 202-2.

Therefore, in the above process, the first machine learning model 210with the self-ordering capability may be used as a data enhancer for thesecond machine learning model 220 for implementing classification. Thisenables the second machine learning model 220 to always output betterclassification results for data with new features.

As mentioned above, the first machine learning model 210 may be anunsupervised SNN (sometimes also referred to as a native SNN). The firstmachine learning model 210 based on the unsupervised SNN has a pluralityof neurons as processing units which may respond to different features(patterns) in the input data, thereby stimulating different modeloutputs. FIG. 3 illustrates an example structure of the first machinelearning model 210 according to some embodiments of the presentdisclosure. The example of FIG. 3 is only provided for betterunderstanding of the unsupervised SNN, thus only a simple two-layerunsupervised SNN model is shown in the figure. It would be appreciatedthat the first machine learning model 210 based on the unsupervised SNNmay be designed to have a similar but more complex model structure asrequired in actual use.

Generally, the first machine learning model 210 based on theunsupervised SNN is adapted to process spiking stream data. Therefore,the pre-processing module 230 for pre-processing of input data isconfigured to convert the input data of the first machine learning model210 (for example, the first input data 202-1 or the second input data202-2, which may be collectively or individually referred to as inputdata 202) into spiking stream data or sequential excitation data thatare suitable for processing by the unsupervised SNN.

The first machine learning model 210 based on the unsupervised SNN asshown in FIG. 3 comprises a first layer of drive neurons, includingdrive neurons 310-1, 310-2, 310-3 (collectively or individually referredto as drive neurons 310), and a second layer of readout neurons,including readout neurons 320-1, 320-2, 320-3, 320-4 (collectively orindividually referred to as readout neurons 320). The drive neurons 310receive a model input, such as the pre-processed input data 202 from thepre-processing module 230, and process the pre-processed input data 202with respective activation functions. The processing results of thedrive neurons 310 are provided to each of the readout neurons 320. Thereadout neurons 320 are linked to each other with an inhibitiveconnection and this supports a winner take all (WTA) mechanism. Eachreadout neuron 320 is responsive to a different aspect of the featuresin the input data 202. Hence, the connections between the neurons canfinally reflect the spiking relationship between one another, indicatingwhich feature point is strong, which feature point is weak, whichrelationship is positive, and which relationship is negative.

If the first machine learning model 210 based on the unsupervised SNN isdesigned in a more complex manner, the input data 202 (or thepre-processed input data 202) will be processed layer by layer throughmore layers including the drive neurons, and finally provided to a layerincluding readout neurons. In addition, the number of neurons in eachlayer may be larger.

With the self-ordering characteristics of the unsupervised SNN, afterthe new input data is processed, if the new input data has new features,the neurons in the first machine learning model 210 based on theunsupervised SNN will respond to the new features, thereby changing theweights of the mutual connections, e.g., updating the parameter setvalues.

In some embodiments, the first machine learning model 210 based on theunsupervised SNN may be designed as a lightweight model. In someembodiments, the first machine learning model 210 based on theunsupervised SNN may be run on a neuromorphic chip in order to furtherimprove the processing efficiency.

In some embodiments, although the first machine learning model 210 has aself-ordering capability and can achieve unsupervised learning,initially the first machine learning model 210 may be trained in asupervised learning manner to determine the initial first parameter setvalues. Specifically, the first machine learning model 210 may betrained using training input data and ground-truth label data for thetraining input data. The first machine learning model 210 is placed inan application phase after the training is completed.

In some embodiments, in order to improve the classification accuracy,the second machine learning model 220 may be based on a multi-proxymodel architecture. FIG. 4 illustrates an example structure of thesecond machine learning model 220 according to some embodiments of thepresent disclosure. As shown in FIG. 4, the second machine learningmodel 220 may be based on a plurality of classifiers, comprising aclassifier 410-1, . . . , classifier 410-N (collectively or individuallyreferred to as classifiers 410), where N is an integer greater than orequal to 2. Each classifier 410 may be implemented based on a differentmachine learning model of classification. The second machine learningmodel 220 further comprises a joint model 420 to integrate outputresults of the N classifiers 410 to provide a final classificationresult for the input data 202. In this way, the multi-proxy-based modelarchitecture can take advantages of various types of classificationmodels to provide more accurate classification.

In some embodiments, the second parameter set values of the secondmachine learning model 220 may also be updated through offline training.Since the first machine learning model 210 can already provide fasteradaptation to new features in new input data, the second machinelearning model 220 may always be able to respond quickly to the newinput data. In such a case, the delay in offline training will notaffect the application of the second machine learning model 220.

FIG. 5 illustrates a model architecture according to some otherembodiments of the present disclosure. As shown in FIG. 5, in additionto the model architecture 200, model update architecture 510 is alsoinvolved. In the model update architecture 510, a database 512 storesfeature information output from the first machine learning model 210 byprocessing the input data 202, such as the first feature information ofthe first input data 202-1 and the second feature information of thesecond input data 202-2. The model update architecture 510 furthercomprises a label collector 514 for collecting a first ground-truthclassification result for the first input data and/or a secondground-truth classification result for the second input data. The labelcollector 514 also stores the collected ground-truth classificationresults in the database 512. After the input data-ground-truthclassification result training samples are accumulated to a certainnumber, re-training of the second machine learning model 220 may betriggered. A duplicated model of the second machine learning model 220is stored in the model update architecture 510. The computing deviceused for model training may train the duplicated model of the secondmachine learning model 220 to update the second parameter set values.

After the training is completed, the second machine learning model 220having the updated second parameter set values can be applied to updatethe second machine learning model 220 in the application stage. Forexample, the computing device 120 running the second machine learningmodel 220 configures the second machine learning model 220 with theupdated second parameter set values. Therefore, the second machinelearning model 220 in the model architecture 200 may use the updatedsecond parameter set values for processing.

In some embodiments, since it might not be always possible to collectthe first ground-truth classification result for the first input data orthe second ground-truth classification result for the second input data,in order to avoid wasting the storage space, the first featureinformation or the second feature information stored in the database 512may be discarded in the case of failing to obtain the first ground-truthclassification result for the first input data or the secondground-truth classification result for the second input data after apredetermined time period.

It should be noted that in the embodiments of model training describedabove, the model training may be implemented by a computing device whichapplies the model architecture 200 is applied, for example, thecomputing device 120, or may be implemented by a different computingdevice, such as the computing device 110.

FIG. 6 shows a flowchart of a process 600 for model adaptation accordingto an embodiment of the present disclosure. The process 600 may beimplemented by the computing device 120 of FIG. 1, and may beimplemented on the basis of the specific model architectures of FIG. 2to FIG. 5.

At 610, the computing device 120 processes first input data by using afirst machine learning model 210 having first parameter set values, toobtain first feature information of the first input data. The firstmachine learning model 210 has a capability of self-ordering and thefirst parameter set values are updated after the processing of the firstinput data. At 620, the computing device 120 generates a firstclassification result for the first input data based on the firstfeature information by using a second machine learning model 220 havinga second parameter set values. At 630, the computing device 120processes second input data by using the first machine learning model210 having the updated first parameter set values, to obtain the secondfeature information of the second input data. At 640, the computingdevice 120 generates a second classification result for the second inputdata based on the second feature information by using the second machinelearning model 220 having the second parameter set values.

In some embodiments, the first machine learning model 210 comprises anunsupervised spiking neural network (SNN). In some embodiments,processing the first input data comprises converting the first inputdata into first spiking stream data available for processing by theunsupervised SNN. In some embodiments, processing the second input datacomprises converting the first input data into second spiking streamdata available for processing by the unsupervised SNN.

In some embodiments, the first machine learning model 210 is run on aneuromorphic chip. In some embodiments, the first parameter set valuesare obtained by training the first machine learning model 210 based ontraining input data and ground-truth label data for the training inputdata.

In some embodiments, the second parameter set values of the secondmachine learning model 220 are obtained through a supervised learningprocess.

In some embodiments, the process 600 further comprises: storing at leastone of the first feature information and the second feature information;in accordance with presence of at least one of the first ground-truthclassification result for the first input data and the secondground-truth classification result for the second input data, and inaccordance with a determination that update of the second machinelearning model 220 is triggered, re-training a duplicated model of thesecond machine learning model 220 by using at least one of a pair of thefirst feature information and the first ground-truth classificationresult and a pair of the second feature information and the secondground-truth classification result, to update the second parameter setvalues; and in accordance with absence of the first ground-truthclassification result for the first input data or the secondground-truth classification result for the second input data for apredetermined time period, discarding the first feature information orthe second feature information.

In some embodiments, the process 600 further comprises configuring thesecond machine learning model 220 with the updated second parameter setvalues.

FIG. 7 illustrates a block diagram of an example device 700 that can beused to implement the embodiments of the present disclosure. The device700 can be used to implement the process 600 of FIG. 6. The device 700may be implemented as the computing device 110 or the computing device120 in FIG. 1.

As shown, the device 700 comprises a central processing unit (CPU) 701,which can perform various acts and processes according to computerprogram instructions stored in a read-only memory (ROM) 702 or loaded toa random-access memory (RAM) 703 from a storage unit 708. The RAM 703can also store various programs and data required by the operations ofthe device 700. The CPU 701, ROM 702, and RAM 703 are connected to eachother via a bus 704. An input/output (I/O) interface 705 is alsoconnected to the bus 704.

The following components in the device 700 are connected to the I/Ointerface 705: an input unit 706 such as a keyboard, a mouse, or thelike; an output unit 707 such as various types of displays and speakers;a storage unit 708 such as a magnetic disk or optical disk; and acommunication unit 709 such as a network card, a modem, a wirelesscommunication transceiver or the like. The communication unit 709enables the device 700 to exchange information/data with other devicesvia a computer network such as the Internet and/or varioustelecommunication networks.

Various methods and processes described above, such as the process 600,can also be performed by the processing unit 701. In some embodiments,the process 600 can be implemented as a computer software program or acomputer program product tangibly comprised in a machine-readablemedium, such as a non-transitory computer-readable medium, for examplethe storage unit 708. In some embodiments, the computer program can bepartially or fully loaded and/or mounted to the device 700 via the ROM702 and/or the communication unit 709. When the computer program isloaded to the RAM 703 and executed by the CPU 701, one or more steps ofthe process 600 described above can be implemented. Alternatively, theCPU 701 can be configured via any other suitable manner (e.g., by meansof firmware) to perform the process 600 in other embodiments.

It is to be understood by those skilled in the art that the above stepsof the methods of the present disclosure may be implemented by ageneral-purpose computing device(s), being integrated on a singlecomputing device or distributed on a network comprising multiplecomputing devices. Alternatively, the above steps of the methods may beimplemented with program code executable by a computing device, so thatthey may be stored in a storage device and executed by the computingdevice, or may be fabricated as individual integrated circuit modules,respectively, or multiple modules or steps may be fabricated asindividual integrated circuit modules for implementation. As such, thepresent disclosure is not limited to any particular combination ofhardware and software.

It would be appreciated that although several means or sub-means of thedevice are mentioned in the detailed description above, this division ismerely exemplary, not mandatory. In fact, according to embodiments ofthe present disclosure, the features and functions of the two or moredevices described above may be embodied in one device. On the otherhand, the features and functions of one device described above may befurther divided and embodied by a plurality of devices.

Only optional embodiments of the present disclosure are described above,which is not intended to limit the present disclosure. For those skilledin the art, the present disclosure may have various modifications andchanges. Any modification, equivalent replacements, and improvement madewithin the spirit and principle of this disclosure should be comprisedin the scope of the present disclosure.

What is claimed is:
 1. A method for model adaptation, comprising: processing first input data by using a first machine learning model having first parameter set values, to obtain first feature information of the first input data, the first machine learning model having a capability of self-ordering and the first parameter set values being updated after the processing of the first input data; generating a first classification result for the first input data based on the first feature information by using a second machine learning model having second parameter set values; processing second input data by using the first machine learning model having the updated first parameter set values, to obtain second feature information of the second input data; and generating a second classification result for the second input data based on the second feature information by using the second machine learning model having the second parameter set values.
 2. The method of claim 1, wherein the first machine learning model comprises an unsupervised spiking neural network (SNN), wherein processing the first input data comprises: converting the first input data into first spiking stream data available for processing by the unsupervised SNN, and wherein processing the second input data comprises: converting the first input data into second spiking stream data available for processing by the unsupervised SNN.
 3. The method of claim 2, wherein the first machine learning model is run on a neuromorphic chip.
 4. The method of claim 1, wherein the first parameter set values are obtained by training the first machine learning model based on training input data and ground-truth label data for the training input data.
 5. The method of claim 1, wherein the second parameter set values of the second machine learning model are obtained through a supervised learning process.
 6. The method of claim 1, further comprising: storing at least one of the first feature information and the second feature information; in accordance with presence of at least one of a first ground-truth classification result for the first input data and a second ground-truth classification result for the second input data, and in accordance with a determination that update of the second machine learning model is triggered, re-training a duplicated model of the second machine learning model by using at least one of a pair of the first feature information and the first ground-truth classification result and a pair of the second feature information and the second ground-truth classification result, so as to update the second parameter set values; and in accordance with absence of the first ground-truth classification result for the first input data or the second ground-truth classification result for the second input data for a predetermined time period, discarding the first feature information or the second feature information.
 7. The method of claim 6, further comprising: configuring the second machine learning model with the updated second parameter set values.
 8. An electronic device, comprising: at least one processor; and at least one memory storing computer program instructions, the at least one memory and the computer program instructions being configured, with the at least processor, to cause the electronic device to perform acts comprising: processing first input data by using a first machine learning model having first parameter set values, to obtain first feature information of the first input data, the first machine learning model having a capability of self-ordering and the first parameter set values being updated after the processing of the first input data; generating a first classification result for the first input data based on the first feature information by using a second machine learning model having second parameter set values; processing second input data by using the first machine learning model having the updated first parameter set values, to obtain second feature information of the second input data; and generating a second classification result for the second input data based on the second feature information by using the second machine learning model having the second parameter set values.
 9. The electronic device of claim 8, wherein the first machine learning model comprises an unsupervised spiking neural network (SNN), wherein processing the first input data comprises: converting the first input data into first spiking stream data available for processing by the unsupervised SNN, and wherein processing the second input data comprises: converting the first input data into second spiking stream data available for processing by the unsupervised SNN.
 10. The electronic device of claim 9, wherein the first machine learning model is run on a neuromorphic chip.
 11. The electronic device of claim 8, wherein the first parameter set values are obtained by training the first machine learning model based on training input data and ground-truth label data for the training input data.
 12. The electronic device of claim 8, wherein the second parameter set values of the second machine learning model are obtained through a supervised learning process.
 13. The electronic device of claim 8, wherein the acts further comprise: storing at least one of the first feature information and the second feature information; in accordance with presence of at least one of a first ground-truth classification result for the first input data and a second ground-truth classification result for the second input data, and in accordance with a determination that update of the second machine learning model is triggered, re-training a duplicated model of the second machine learning model by using at least one of a pair of the first feature information and the first ground-truth classification result and a pair of the second feature information and the second ground-truth classification result, so as to update the second parameter set values; and in accordance with absence of the first ground-truth classification result for the first input data or the second ground-truth classification result for the second input data for a predetermined time period, discarding the first feature information or the second feature information.
 14. The electronic device of claim 13, wherein the acts further comprise: configuring the second machine learning model with the updated second parameter set values.
 15. A computer program product which is tangibly stored on a non-volatile computer readable medium and comprises machine-executable instructions which, when executed, causing a device to: process first input data by using a first machine learning model having first parameter set values, to obtain first feature information of the first input data, the first machine learning model having a capability of self-ordering and the first parameter set values being updated after the processing of the first input data; generate a first classification result for the first input data based on the first feature information by using a second machine learning model having second parameter set values; process second input data by using the first machine learning model having the updated first parameter set values, to obtain second feature information of the second input data; and generate a second classification result for the second input data based on the second feature information by using the second machine learning model having the second parameter set values.
 16. The computer program product of claim 15, wherein the first machine learning model comprises an unsupervised spiking neural network (SNN), wherein processing the first input data comprises: converting the first input data into first spiking stream data available for processing by the unsupervised SNN, and wherein processing the second input data comprises: converting the first input data into second spiking stream data available for processing by the unsupervised SNN.
 17. The computer program product of claim 16, wherein the first machine learning model is run on a neuromorphic chip.
 18. The computer program product of claim 15, wherein the first parameter set values are obtained by training the first machine learning model based on training input data and ground-truth label data for the training input data.
 19. The computer program product of claim 15, wherein the second parameter set values of the second machine learning model are obtained through a supervised learning process.
 20. The computer program product of claim 15, wherein the machine executable instructions, when executed, further cause the device to: store at least one of the first feature information and the second feature information; in accordance with presence of at least one of a first ground-truth classification result for the first input data and a second ground-truth classification result for the second input data, and in accordance with a determination that update of the second machine learning model is triggered, re-train a duplicated model of the second machine learning model by using at least one of a pair of the first feature information and the first ground-truth classification result and a pair of the second feature information and the second ground-truth classification result, so as to update the second parameter set values; and in accordance with absence of the first ground-truth classification result for the first input data or the second ground-truth classification result for the second input data for a predetermined time period, discard the first feature information or the second feature information. 